package ssh

import (
	"fmt"
	"go.uber.org/zap"
)

// 通过 jobid,使用 linux指令杀死对应爬虫

func KillEsfZf(jobId string) (err error) {

	session, err := sshClient.NewSession()

	if err != nil {

		zap.L().Error("创建ssh 会话失败", zap.Error(err))
		// ssh断开连接，这里需要进行重连
		err = Init()
		if err != nil {
			zap.L().Error("第二次创建ssh 会话失败", zap.Error(err))
			return err

		}
		return

	}

	defer session.Close()
	// 杀死对应爬虫
	cmdStr := fmt.Sprintf("ps -ef | grep %s | awk '{print $2}' | xargs kill -9 ", jobId)
	combo, _ := session.CombinedOutput(cmdStr)

	//log.Println("命令输出:",string(combo))
	zap.L().Debug("ssh 远程命令输出结果为：" + string(combo))
	return
}
